From 606daab4754a8fff853a07e90a5f671557918114 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Mon, 27 Jul 2020 19:26:22 -0400 Subject: [PATCH] a11y: Add progressbar tests Test the changes in the previous commit. --- testsuite/a11y/meson.build | 1 + testsuite/a11y/progressbar.c | 58 ++++++++++++++++++++++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100644 testsuite/a11y/progressbar.c diff --git a/testsuite/a11y/meson.build b/testsuite/a11y/meson.build index 26efe7a863..d189ba8a43 100644 --- a/testsuite/a11y/meson.build +++ b/testsuite/a11y/meson.build @@ -14,6 +14,7 @@ tests = [ { 'name': 'button' }, { 'name': 'checkbutton' }, { 'name': 'dialog' }, + { 'name': 'progressbar' }, { 'name': 'window' }, ] diff --git a/testsuite/a11y/progressbar.c b/testsuite/a11y/progressbar.c new file mode 100644 index 0000000000..97f5ef82e7 --- /dev/null +++ b/testsuite/a11y/progressbar.c @@ -0,0 +1,58 @@ +#include + +static void +progress_bar_role (void) +{ + GtkWidget *widget = gtk_progress_bar_new (); + g_object_ref_sink (widget); + + gtk_test_accessible_assert_role (widget, GTK_ACCESSIBLE_ROLE_PROGRESS_BAR); + + g_object_unref (widget); +} + +static void +progress_bar_state (void) +{ + GtkWidget *widget = gtk_progress_bar_new (); + g_object_ref_sink (widget); + + gtk_test_accessible_assert_state (widget, GTK_ACCESSIBLE_STATE_BUSY, FALSE); + + gtk_progress_bar_pulse (GTK_PROGRESS_BAR (widget)); + + gtk_test_accessible_assert_state (widget, GTK_ACCESSIBLE_STATE_BUSY, TRUE); + + g_object_unref (widget); +} + +static void +progress_bar_properties (void) +{ + GtkWidget *widget = gtk_progress_bar_new (); + g_object_ref_sink (widget); + + gtk_test_accessible_assert_property (widget, GTK_ACCESSIBLE_PROPERTY_VALUE_MAX, 1.); + gtk_test_accessible_assert_property (widget, GTK_ACCESSIBLE_PROPERTY_VALUE_MIN, 0.); + gtk_test_accessible_assert_property (widget, GTK_ACCESSIBLE_PROPERTY_VALUE_NOW, 0.); + + gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (widget), 0.5); + + gtk_test_accessible_assert_property (widget, GTK_ACCESSIBLE_PROPERTY_VALUE_MAX, 1.); + gtk_test_accessible_assert_property (widget, GTK_ACCESSIBLE_PROPERTY_VALUE_MIN, 0.); + gtk_test_accessible_assert_property (widget, GTK_ACCESSIBLE_PROPERTY_VALUE_NOW, 0.5); + + g_object_unref (widget); +} + +int +main (int argc, char *argv[]) +{ + gtk_test_init (&argc, &argv, NULL); + + g_test_add_func ("/a11y/progressbar/role", progress_bar_role); + g_test_add_func ("/a11y/progressbar/state", progress_bar_state); + g_test_add_func ("/a11y/progressbar/properties", progress_bar_properties); + + return g_test_run (); +} -- 2.30.2